package com.tro.common.util.json;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import org.apache.commons.lang3.StringUtils;

import com.tro.common.util.string.StringUtlis;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

public class JsonUtil {
	public static JSONObject strToJson(String json) {
		return JSONObject.fromObject(json);
	}

	public static <T> T jsonToObject(JSONObject jsonObject, Class<T> pojoCalss) {
		Object pojo;
		pojo = net.sf.json.JSONObject.toBean(jsonObject, pojoCalss);
		return (T) pojo;
	}
	
	public static JSONArray strToArray(String json){
		JSONArray array=JSONArray.fromObject(json);
		return array;
	}
	
	public static <T>List<T> jsonToList(String json,Class<T> pojoClazz){
		JSONArray array=strToArray(json);
		List<T> result=new ArrayList<>();
		for(Object obj:array){
			JSONObject jsonObj=strToJson(obj.toString());
			result.add(jsonToObject(jsonObj,pojoClazz));
		}
		return result;
	}
	


	public static void main(String[] args) {
		JsonUtil util = new JsonUtil();
		// util.buildSql("{\"name\":\"leeko\"}");
		//strToObject("", JsonUtil.class);
	}
}
